package com.gnerv.pabu.basic.core.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gnerv.pabu.basic.core.dto.ArticleDTO;
import com.gnerv.pabu.basic.core.dto.ArticleDetailsDTO;
import com.gnerv.pabu.basic.core.dto.ArticleSaveDTO;
import com.gnerv.pabu.basic.core.dto.ArticleSearchDTO;
import com.gnerv.pabu.basic.core.entity.Article;

public interface IArticleService extends IService<Article> {

    boolean saveArticle(ArticleSaveDTO catalogSaveDTO);

    boolean createArticle(ArticleSaveDTO catalogSaveDTO);

    boolean deleteByArticleId(String catalogId);

    boolean updateArticle(ArticleSaveDTO catalogSaveDTO);

    boolean updateArticleStatus(String catalogId, Integer status);

    ArticleDTO selectArticle(String catalogId);

    ArticleDetailsDTO selectArticleDetails(String articleId);

    Page<ArticleDTO> listArticle(ArticleSearchDTO catalog, Long current, Long size);
}
